XSS (Cross-Site Scripting) এবং CSRF (Cross-Site Request Forgery) হল দুটি সাধারণ নিরাপত্তা হুমকি যা ওয়েব অ্যাপ্লিকেশনগুলোর জন্য বিপজ্জনক হতে পারে। এই দুটি আক্রমণ বিভিন্ন ধরনের সুরক্ষা ঝুঁকি তৈরি করতে পারে, যেমন ব্যবহারকারীর ডেটা চুরি বা সিস্টেমের অপ্রত্যাশিত আচরণ। এই টিউটোরিয়ালে আমরা XSS এবং CSRF আক্রমণ প্রতিরোধের পদ্ধতিগুলি আলোচনা করব।
XSS হল একটি ধরনের আক্রমণ যেখানে আক্রমণকারী ব্যবহারকারীর ব্রাউজারে ক্ষতিকর স্ক্রিপ্ট কোড ইনজেক্ট করে। এই স্ক্রিপ্ট কোডটি ব্যবহারকারীর ইন্টারঅ্যাকশন বা ডেটার ওপর আক্রমণ করতে পারে, যেমন তথ্য চুরি বা ব্যবহারকারীকে ক্ষতিকর ওয়েবসাইটে রিডিরেক্ট করা।
XSS আক্রমণের প্রধান উদ্দেশ্য হল ব্রাউজারে স্ক্রিপ্ট চালানো, যা ব্যবহারকারীর পক্ষ থেকে অবৈধ কাজ করতে পারে, যেমন সেশন হাইজ্যাকিং (Session Hijacking), কুকি চুরি বা ফিশিং।
XSS আক্রমণ তিনটি প্রধান ধরনের হতে পারে:
@Html.Encode()
অথবা @Url.Encode()
ব্যবহার করা।HttpOnly
হিসেবে চিহ্নিত করুন, যাতে JavaScript কোড কুকিগুলি অ্যাক্সেস করতে না পারে।CSRF হল একটি আক্রমণ যেখানে আক্রমণকারী ব্যবহারকারীকে একটি অনাকাঙ্ক্ষিত রিকোয়েস্ট পাঠানোর জন্য প্ররোচিত করে। এই আক্রমণের মাধ্যমে, আক্রমণকারী একটি বৈধ ব্যবহারকারীর সেশন ব্যবহার করে কোনো অ্যাকশন (যেমন পাসওয়ার্ড পরিবর্তন বা ফান্ড ট্রান্সফার) সম্পন্ন করতে পারে।
CSRF আক্রমণ সাধারণত ওয়েব অ্যাপ্লিকেশনের ডাটা ম্যানিপুলেশন বা স্টেট-চেঞ্জিং রিকোয়েস্টগুলিতে ঘটতে পারে, যেমন: ফর্ম সাবমিশন, পাসওয়ার্ড রিসেট, এবং অন্যান্য ম্যানিপুলেশন অ্যাকশন।
Anti-CSRF Tokens: CSRF প্রতিরোধের একটি গুরুত্বপূর্ণ পদ্ধতি হল র্যান্ডম টোকেন ব্যবহার করা। যখন ব্যবহারকারী একটি ফর্ম সাবমিট করেন, তখন সার্ভার একটি টোকেন জেনারেট করে, যা পরবর্তীতে ব্যবহারকারী ফর্মের সাথে পাঠাতে হয়। টোকেনটি সার্ভারের সাথে মিলিয়ে দেখা হয়, যদি মিলে না যায় তবে রিকোয়েস্টটি বাতিল করা হয়।
ASP.NET Core-এ CSRF প্রতিরোধ করতে ValidateAntiForgeryToken
অ্যাট্রিবিউট ব্যবহার করা যায়।
[HttpPost]
[ValidateAntiForgeryToken]
public IActionResult SubmitForm(FormData data)
{
// Form submission logic
}
SameSite
কুকি অ্যাট্রিবিউটটি ব্রাউজারকে নির্দেশ দেয় যে শুধুমাত্র সেই ডোমেইন থেকে কুকি পাঠানো যাবে, যা প্রথমে কুকিটি সেট করেছে। এটি CSRF আক্রমণ প্রতিরোধে সাহায্য করে।SameSite=Strict
অথবা SameSite=Lax
বিষয় | XSS | CSRF |
---|---|---|
উদ্দেশ্য | ব্যবহারকারীর ব্রাউজারে স্ক্রিপ্ট চালানো | ব্যবহারকারীর পক্ষ থেকে অনিচ্ছাকৃত রিকোয়েস্ট পাঠানো |
কিভাবে কাজ করে | আক্রমণকারী ক্ষতিকর স্ক্রিপ্ট ইনজেক্ট করে | আক্রমণকারী ব্যবহারকারীকে এক্সপ্লয়েটেড রিকোয়েস্ট পাঠায় |
লক্ষ্য | ব্যবহারকারীর ডেটা চুরি বা ক্ষতিকর কার্যকলাপ | ব্যবহারকারীর সেশন ব্যবহার করে অননুমোদিত অ্যাকশন করা |
প্রতিরোধের পদ্ধতি | Output Encoding, CSP, HttpOnly Cookies | Anti-CSRF Tokens, SameSite Cookies, CORS |
XSS এবং CSRF হল দুটি ভিন্ন ধরনের ওয়েব অ্যাপ্লিকেশন সিকিউরিটি ঝুঁকি, তবে উভয়ই ব্যবহারকারীর নিরাপত্তার জন্য বিপজ্জনক। XSS আক্রমণে ক্ষতিকর স্ক্রিপ্ট ব্যবহারকারীর ব্রাউজারে এক্সিকিউট করা হয়, যা ব্যবহারকারীর তথ্য চুরি বা ফিশিং করতে পারে। অপরদিকে, CSRF আক্রমণে আক্রমণকারী ব্যবহারকারীর সেশনকে ব্যবহার করে অননুমোদিত রিকোয়েস্ট পাঠায়। উভয় ধরনের আক্রমণ প্রতিরোধের জন্য যথাযথ নিরাপত্তা পদ্ধতি ব্যবহার করা আবশ্যক, যেমন Input Validation, Anti-CSRF Tokens, CSP, এবং SameSite Cookies।
common.read_more